=begin pod

=TITLE class VM

=SUBTITLE Perl 6 Virtual Machine related information

    class VM does Systemic { }

Built-in class for providing information about the virtual machine in which
Perl 6 is running. Usually accessed through the L<$*VM> dynamic variable.

=head1 Methods

=head2 method auth

Instance method returning the "auth" (as in "author" or "authority") of the
VM object. Returns "unknown" if the "auth" could not be established.

=head2 method config

Instance returning a hash with configuration information of the VM object.
Subject to change without notice, but can be helpful in environments where only
one type of virtual machine is in use.

=head2 method desc

Instance method returning the "desc" (as in "description") of the VM object.
Returns a C<Str> type object if the "desc" could not be established.

=head2 method name

Instance method returning the name of the VM object.

=head2 method osname

Instance / Class method returning the name of the Operating System, as known
by the configuration of the VM object / currently running virtual machine.

=head2 method precomp-ext

Instance method returning a string of the extension that should be used for
precompiled files of the VM object.

=head2 method precomp-target

Instance method returning a string of the value of the compilation target
that should be used when pre-compiling source-files with the VM object.

=head2 method prefix

Instance method returning a string of the path in which the virtual machine
of the VM object is installed.

=head2 method signature

Instance method returning the signature of the VM object. Returns a
C<Blob> type object if the signature could not be established.

=head2 method version

Instance method returning the version of the VM object as a L<Version>
object. Returns a Version object "unknown" if the version could not be
established.

See Also: L<Systemic>

=end pod

# vim: expandtab softtabstop=4 shiftwidth=4 ft=perl6
